package com.example.myapplication

import android.os.Bundle
import android.view.View
import android.widget.ArrayAdapter
import android.widget.Button
import android.widget.LinearLayout
import android.widget.Spinner
import android.widget.TextView
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {
    // 声明点击计数器和文本容器
    private var clickCount = 0
    private lateinit var textContainer: LinearLayout

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        setContentView(R.layout.activity_main)

        // 处理系统窗口Insets
        ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
            val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
            v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
            insets
        }

        // 初始化控件引用
        val button = findViewById<Button>(R.id.button)
        textContainer = findViewById(R.id.textContainer)

        // 设置按钮点击事件监听器
        button.setOnClickListener {
            // 每次点击计数加1
            clickCount++

            // 创建新的文本视图显示点击次数
            val textView = TextView(this)
            textView.text = "点击次数: $clickCount"
            textView.textSize = 16f  // 设置文字大小
            textView.setPadding(16, 16, 16, 16)  // 设置内边距

            // 添加到容器中
            textContainer.addView(textView)
        }
        val spinner = findViewById<Spinner>(R.id.spinner)

        // 定义选项数据：简单、一般、困难
        val difficultyOptions = arrayOf("简单", "一般", "困难")

        // 创建适配器，将数据与Spinner关联
        val adapter = ArrayAdapter(
            this,
            android.R.layout.simple_spinner_item,  // 简单的item布局
            difficultyOptions
        )

        // 设置下拉列表的样式
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)

        // 为Spinner设置适配器
        spinner.adapter = adapter

        // 可以给"确认"按钮添加点击事件，获取选中的选项
        val confirmButton = findViewById<Button>(R.id.button2)
        confirmButton.setOnClickListener {
            val selectedDifficulty = spinner.selectedItem.toString()
            // 这里可以处理选中的难度，例如显示到ScrollView中
            val textView = TextView(this)
            textView.text = "选择的难度: $selectedDifficulty"
            textView.textSize = 16f
            textView.setPadding(16, 16, 16, 16)
            textContainer.addView(textView)
        }
    }
}
